package com.example.demo;

import org.springframework.web.bind.annotation.*;

// @RestController注解能够使项目支持Rest
@RestController
//@SpringBootApplication
// 表示该controller类下所有的方法都公用的一级上下文根
@RequestMapping(value = "springboot")
public class UserController {
    @GetMapping(value = "getUserByGet")
    public String getUserByGet(String userName) {
        return "Hello Get:" + userName;
    }

    //通过RequestMethod.POST表示请求需要时POST方式
    @PostMapping(value = "getUserByPost")
    public String getUserByPost(String userName) {
        return "Hello Post: " + userName;
    }

    //在入参设置@RequestBody注解表示接收整个报文体，这里主要用在接收整个POST请求中的json报文体，
    //目前主流的请求报文也都是JSON格式了，使用该注解就能够获取整个JSON报文体作为入参，使用JSON解析工具解析后获取具体参数
    @RequestMapping(value = "/getUserByJson", method = RequestMethod.POST)
    String getUserByJson(@RequestBody String data) {
        return "Json is: " + data;
    }
}
